<!--
  Copyright JS Foundation and other contributors, http://js.foundation

  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.
  You may obtain a copy of the License at

  http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.
-->

<script type="text/html" data-help-name="file">
    <p>Écrit <code>msg.payload</code> dans un fichier, soit en ajoutant à la fin, soit en remplaçant le contenu existant.
        Alternativement, il peut supprimer le fichier.</p>
    <h3>Entrées</h3>
    <dl class="message-properties">
        <dt class="optional">filename <span class="property-type">chaîne de caractères</span></dt>
        <dd>Le nom du fichier à mettre à jour, peut être soit défini dans la configuration du noeud soit en tant que propriété du message.
            Par défaut, il utilisera <code>msg.filename</code> mais cela peut être personnalisé dans le noeud.
        </dd>
        <dt class="optional">encoding <span class="property-type">chaîne de caractères</span></dt>
        <dd>Si l'encodage est configuré pour être défini par msg, cette propriété facultative peut définir l'encodage.</dt>
    </dl>
    <h3>Sortie</h3>
    <p>À la fin de l'écriture, le message d'entrée est envoyé au port de sortie.</p>
    <h3>Détails</h3>
    <p>Chaque charge utile du message sera ajoutée à la fin du fichier, en ajoutant éventuellement
    un caractère de saut de ligne (\n) entre chacun.</p>
    <p>Si <code>msg.filename</code> est utilisé, le fichier sera fermé après chaque écriture.
    Pour de meilleures performances, utiliser un nom de fichier fixe.</p>
    <p>Il peut être configuré pour écraser l'intégralité du fichier plutôt que de l'ajouter. Par exemple,
    lors de l'écriture de données binaires dans un fichier, comme une image, cette option doit être utilisée
    et l'option d'ajout d'une nouvelle ligne doit être désactivée.</p>
    <p>Le codage des données écrites dans un fichier peut être spécifié à partir de la liste des codages.</p>
    <p>Alternativement, ce noeud peut être configuré pour supprimer le fichier.</p>
</script>

<script type="text/html" data-help-name="file in">
    <p>Lit le contenu d'un fichier sous forme de chaîne ou de tampon binaire.</p>
    <h3>Entrées</h3>
    <dl class="message-properties">
        <dt class="optional">filename <span class="property-type">chaîne de caractères</span></dt>
        <dd>Le nom du fichier à lire peut être fourni dans la configuration du noeud ou en tant que propriété du message.
            Par défaut, il utilisera <code>msg.filename</code> mais cela peut être personnalisé dans le noeud.
        </dd>
    </dl>
    <h3>Sorties</h3>
    <dl class="message-properties">
        <dt>payload <span class="property-type">chaîne | tampon</span></dt>
        <dd>Le contenu du fichier sous forme de chaîne ou de tampon binaire.</dd>
        <dt class="optional">filename <span class="property-type">chaîne de caractères</span></dt>
        <dd>Si elle n'est pas configurée dans le noeud, cette propriété facultative définit le nom du fichier à lire.</dd>
    </dl>
    <h3>Détails</h3>
    <p>Le nom du fichier doit être un chemin absolu, sinon il sera relatif au
    répertoire de travail du processus Node-RED.</p>
    <p>Sous Windows, les séparateurs de chemin peuvent devoir être inversés, par exemple : <code>\\Users\\myUser</code>.</p>
    <p>En option, un fichier texte peut être divisé en lignes, produisant un message par ligne, ou un fichier binaire
    divisé en blocs de mémoire tampon plus petits - la taille du bloc dépend du système d'exploitation, mais généralement 64k (Linux/Mac) ou 41k (Windows).</p>
    <p>Lorsqu'il est divisé en plusieurs messages, chaque message aura un ensemble de propriétés <code>parts</code>,
    formant une séquence de message complète.</p>
    <p>L'encodage des données d'entrée peut être spécifié à partir de la liste des encodages si le format de sortie est une chaîne.</p>
    <p>Les erreurs doivent être détectées et gérées à l'aide d'un noeud Catch.</p>
</script>
